#define _CRT_SECURE_NO_WARNINGS 1

#include <iostream>
#include <stack>
#include <utility>
#include <vector>
using namespace std;

typedef pair<int, int> PII;

#define N 10
int arr[N][N];
bool sta[N][N];
int dx[4] = { 1,-1,0,0 };
int dy[4] = { 0,0,1,-1 };
stack<PII> s;

bool getpath(int i, int j, int n, int m)
{
    if (i == n - 1 && j == m - 1)
    {
        s.push(make_pair(i, j));
        return true;
    }

    s.push(make_pair(i, j));
    for (int a = 0; a < 4; a++)
    {
        int x = dx[a] + i;
        int y = dy[a] + j;
        if (x >= 0 && y >= 0 && x < n && y < m)
        {
            if (arr[x][y] == 0 && !sta[x][y])
            {
                sta[x][y] = true;
                if (getpath(x, y, n, m))
                {
                    return true;
                }
                s.pop();
            }
        }
    }
    return false;
}

int main()
{
    int n, m;
    cin >> n >> m;
    for (int i = 0; i < n; i++)
    {
        for (int j = 0; j < m; j++)
        {
            cin >> arr[i][j];
        }
    }
    getpath(0, 0, n, m);

    vector<PII> v;
    while (!s.empty())
    {
        v.push_back(s.top());
        s.pop();
    }
    for (auto it = v.rbegin(); it != v.rend(); it++)
    {
        printf("(%d,%d)\n", it->first,it->second);
    }
    return 0;
}
